Interface
Part 2/6 • 18.6 KB total
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Modes
Interface modes let you control how announces propagate and how paths are discovered, indirectly affecting how transport nodes route traffic. Properly configured interfaces can adapt network usage to different scenarios, such as fast backbone links, slow radio segments, or mobile connections.cite-ref-4[4]
Comparison
| Name | Path expiration | Path seeking | Propagates announces to |
|---|---|---|---|
| full | 7 days | ❌ | full boundary roaming gateway internal |
| gateway / gw | 7 days | ✅ | full boundary roaming gateway internal |
| access_point / ap | 1 day | ✅ | full boundary roaming gateway internal |
| boundary | 7 days | ❌ | full boundary gateway |
| internal | 7 days | ✅ | full boundary gateway internal |
| roaming | ¼ day | ✅ | full gateway internal |
full
The default mode. Lack of path seeking means it can only answer network queries for announces it has seen directly.
Unless running as a transport node, it is generally best to use full.
gateway
Basically full + path seeking on behalf of its clients.
If an interface is discoverable, RNS will automatically force the mode gateway (or access_point for RNodes).
Tip: If you want to allow other peers to widely resolve paths or connect to a wider network through an interface, put it in gateway mode. By creating a chain of gateway interfaces, peers can immediately resolve paths to any destination along the chain.
access_point
Silent until requested; ideal for radio connections. Announces will never propagate over access_point interfaces, but path seeking allows it to resolve paths on behalf of its clients. Lower expiration time ensures fewer stale paths.
boundary
Marks an edge to a network segment that is significantly different from the current one.
For example, if the instance is part of a low-bandwidth LoRa segment but also has a high-bandwidth Internet connection over a BackboneInterface, then that interface should be set to boundary.
internal
Protected inner segment. Announces from boundary interfaces will not propagate over internal interfaces. Path seeking still allows its clients to resolve paths across any boundary interfaces on the instance.
roaming
Mobile interfaces. Low expiration time reduces the need to test paths that may no longer be valid due to movement. Announces are only broadcast to full, gateway and internal interfaces, keeping downstream connections clean from transient paths.
Announce propagation
| From ↓ To → | full | access_point | boundary | roaming | gateway | internal |
|---|---|---|---|---|---|---|
| full | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ |
| gateway | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ |
| access_point | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ |
| boundary | ✅ | ❌ | ✅ | ❌ | ✅ | ❌ |
| internal | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ |
| roaming | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ |
✅ Will rebroadcast announce.
❌ Will not rebroadcast announce.
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────